cocina-models 0.42.0 → 0.46.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.
- checksums.yaml +4 -4
- data/.github/pull_request_template.md +2 -3
- data/.rubocop.yml +80 -102
- data/README.md +6 -1
- data/cocina-models.gemspec +3 -3
- data/docs/index.html +1 -1
- data/lib/cocina/models/contributor.rb +2 -0
- data/lib/cocina/models/description.rb +2 -1
- data/lib/cocina/models/descriptive_access_metadata.rb +1 -0
- data/lib/cocina/models/descriptive_admin_metadata.rb +1 -1
- data/lib/cocina/models/descriptive_basic_value.rb +2 -0
- data/lib/cocina/models/descriptive_value.rb +2 -0
- data/lib/cocina/models/language.rb +3 -1
- data/lib/cocina/models/message_digest.rb +1 -1
- data/lib/cocina/models/related_resource.rb +4 -0
- data/lib/cocina/models/title.rb +2 -0
- data/lib/cocina/models/version.rb +1 -1
- data/openapi.yml +35 -24
- metadata +13 -14
- data/lib/cocina/models/classification.rb +0 -11
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8389369c0fe410193de14e970c41f8caf0897529d9f137f12b402c69ae0dfe73
|
|
4
|
+
data.tar.gz: e1f670a2f769c2220d7c6e40afe5757fd269649594ed9e1743c715ccb501b24e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a5e3eb27b903fd4050db36645f74427087a58dbfdaca9827400872977025fecb80797144a430b2b05ec06d426614fa7c81f9cc9bd4b17709bfb941f71b9ca403
|
|
7
|
+
data.tar.gz: a1b4edb10305328ee9dd232fd76ce2276f3a265b483be5e754f99f8723a15118c5da56ae25b10b5afa6672875ec25aaf2e54e078b037db8f1509c68006f162d2
|
data/.rubocop.yml
CHANGED
|
@@ -7,170 +7,148 @@ require:
|
|
|
7
7
|
AllCops:
|
|
8
8
|
TargetRubyVersion: 2.5
|
|
9
9
|
|
|
10
|
+
# ----- Layout ------
|
|
11
|
+
|
|
10
12
|
Layout/LineLength:
|
|
11
13
|
Max: 114
|
|
12
14
|
Exclude:
|
|
13
15
|
- lib/cocina/models/*
|
|
14
16
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
- cocina-models.gemspec
|
|
18
|
-
- spec/cocina/**/*
|
|
19
|
-
|
|
20
|
-
Metrics/MethodLength:
|
|
21
|
-
Max: 14
|
|
22
|
-
|
|
23
|
-
RSpec/MultipleExpectations:
|
|
24
|
-
Enabled: false
|
|
25
|
-
|
|
26
|
-
RSpec/ExampleLength:
|
|
27
|
-
Max: 18
|
|
28
|
-
Exclude:
|
|
29
|
-
- spec/cocina/models/description_spec.rb
|
|
30
|
-
- spec/cocina/models/dro_shared_examples.rb
|
|
31
|
-
|
|
32
|
-
Style/Documentation:
|
|
33
|
-
Exclude:
|
|
34
|
-
- lib/cocina/models/*
|
|
35
|
-
|
|
17
|
+
Layout/BeginEndAlignment: # (new in 0.91)
|
|
18
|
+
Enabled: true
|
|
36
19
|
Layout/EmptyLinesAroundAttributeAccessor:
|
|
37
20
|
Enabled: true
|
|
38
|
-
|
|
39
21
|
Layout/SpaceAroundMethodCallOperator:
|
|
40
22
|
Enabled: true
|
|
41
23
|
|
|
42
|
-
Lint
|
|
43
|
-
Enabled: true
|
|
24
|
+
# ----- Lint ------
|
|
44
25
|
|
|
45
|
-
Lint/
|
|
26
|
+
Lint/BinaryOperatorWithIdenticalOperands:
|
|
46
27
|
Enabled: true
|
|
47
|
-
|
|
48
|
-
Lint/RaiseException:
|
|
28
|
+
Lint/ConstantDefinitionInBlock: # (new in 0.91)
|
|
49
29
|
Enabled: true
|
|
50
|
-
|
|
51
|
-
Lint/StructNewOverride:
|
|
30
|
+
Lint/DeprecatedOpenSSLConstant:
|
|
52
31
|
Enabled: true
|
|
53
|
-
|
|
54
|
-
Style/AccessorGrouping:
|
|
32
|
+
Lint/DuplicateElsifCondition:
|
|
55
33
|
Enabled: true
|
|
56
|
-
|
|
57
|
-
Style/BisectedAttrAccessor:
|
|
34
|
+
Lint/DuplicateRequire: # (new in 0.90)
|
|
58
35
|
Enabled: true
|
|
59
|
-
|
|
60
|
-
Style/ExponentialNotation:
|
|
36
|
+
Lint/DuplicateRescueException:
|
|
61
37
|
Enabled: true
|
|
62
|
-
|
|
63
|
-
Style/HashEachMethods:
|
|
38
|
+
Lint/EmptyConditionalBody:
|
|
64
39
|
Enabled: true
|
|
65
|
-
|
|
66
|
-
Style/HashTransformKeys:
|
|
40
|
+
Lint/EmptyFile: # (new in 0.90)
|
|
67
41
|
Enabled: true
|
|
68
|
-
|
|
69
|
-
Style/HashTransformValues:
|
|
42
|
+
Lint/FloatComparison:
|
|
70
43
|
Enabled: true
|
|
71
|
-
|
|
72
|
-
Style/RedundantAssignment:
|
|
44
|
+
Lint/HashCompareByIdentity: # (new in 0.93)
|
|
73
45
|
Enabled: true
|
|
74
|
-
|
|
75
|
-
Style/RedundantFetchBlock:
|
|
46
|
+
Lint/IdentityComparison: # (new in 0.91)
|
|
76
47
|
Enabled: true
|
|
77
|
-
|
|
78
|
-
Style/RedundantRegexpCharacterClass:
|
|
48
|
+
Lint/MissingSuper:
|
|
79
49
|
Enabled: true
|
|
80
|
-
|
|
81
|
-
Style/RedundantRegexpEscape:
|
|
50
|
+
Lint/MixedRegexpCaptureTypes:
|
|
82
51
|
Enabled: true
|
|
83
|
-
|
|
84
|
-
Style/SlicingWithRange:
|
|
52
|
+
Lint/OutOfRangeRegexpRef:
|
|
85
53
|
Enabled: true
|
|
86
|
-
|
|
87
|
-
Lint/BinaryOperatorWithIdenticalOperands:
|
|
54
|
+
Lint/RaiseException:
|
|
88
55
|
Enabled: true
|
|
89
|
-
|
|
90
|
-
Lint/DuplicateElsifCondition:
|
|
56
|
+
Lint/RedundantSafeNavigation: # (new in 0.93)
|
|
91
57
|
Enabled: true
|
|
92
|
-
|
|
93
|
-
Lint/DuplicateRescueException:
|
|
58
|
+
Lint/SelfAssignment:
|
|
94
59
|
Enabled: true
|
|
95
|
-
|
|
96
|
-
Lint/EmptyConditionalBody:
|
|
60
|
+
Lint/StructNewOverride:
|
|
97
61
|
Enabled: true
|
|
98
|
-
|
|
99
|
-
Lint/FloatComparison:
|
|
62
|
+
Lint/TopLevelReturnWithArgument:
|
|
100
63
|
Enabled: true
|
|
101
|
-
|
|
102
|
-
Lint/MissingSuper:
|
|
64
|
+
Lint/TrailingCommaInAttributeDeclaration: # (new in 0.90)
|
|
103
65
|
Enabled: true
|
|
104
|
-
|
|
105
|
-
Lint/OutOfRangeRegexpRef:
|
|
66
|
+
Lint/UnreachableLoop:
|
|
106
67
|
Enabled: true
|
|
107
|
-
|
|
108
|
-
Lint/SelfAssignment:
|
|
68
|
+
Lint/UselessMethodDefinition: # (new in 0.90)
|
|
109
69
|
Enabled: true
|
|
110
|
-
|
|
111
|
-
Lint/TopLevelReturnWithArgument:
|
|
70
|
+
Lint/UselessTimes: # (new in 0.91)
|
|
112
71
|
Enabled: true
|
|
113
72
|
|
|
114
|
-
|
|
115
|
-
Enabled: true
|
|
73
|
+
# ----- Metrics ------
|
|
116
74
|
|
|
117
|
-
|
|
118
|
-
|
|
75
|
+
Metrics/BlockLength:
|
|
76
|
+
Exclude:
|
|
77
|
+
- cocina-models.gemspec
|
|
78
|
+
- spec/cocina/**/*
|
|
119
79
|
|
|
120
|
-
|
|
121
|
-
|
|
80
|
+
Metrics/MethodLength:
|
|
81
|
+
Max: 14
|
|
122
82
|
|
|
123
|
-
|
|
124
|
-
Enabled: true
|
|
83
|
+
# ----- RSpec ------
|
|
125
84
|
|
|
126
|
-
|
|
127
|
-
|
|
85
|
+
RSpec/ExampleLength:
|
|
86
|
+
Max: 18
|
|
87
|
+
Exclude:
|
|
88
|
+
- spec/cocina/models/description_spec.rb
|
|
89
|
+
- spec/cocina/models/dro_shared_examples.rb
|
|
128
90
|
|
|
129
|
-
|
|
130
|
-
Enabled:
|
|
91
|
+
RSpec/MultipleExpectations:
|
|
92
|
+
Enabled: false
|
|
131
93
|
|
|
132
|
-
|
|
94
|
+
RSpec/StubbedMock: # (new in 1.44)
|
|
133
95
|
Enabled: true
|
|
134
96
|
|
|
135
|
-
Style
|
|
136
|
-
Enabled: false
|
|
97
|
+
# ----- Style ------
|
|
137
98
|
|
|
138
|
-
Style/
|
|
139
|
-
|
|
99
|
+
Style/Documentation:
|
|
100
|
+
Exclude:
|
|
101
|
+
- lib/cocina/models/*
|
|
140
102
|
|
|
141
|
-
Style/
|
|
103
|
+
Style/AccessorGrouping:
|
|
142
104
|
Enabled: true
|
|
143
|
-
|
|
144
|
-
Style/StringConcatenation:
|
|
105
|
+
Style/ArrayCoercion:
|
|
145
106
|
Enabled: true
|
|
146
|
-
|
|
147
|
-
Layout/BeginEndAlignment: # (new in 0.91)
|
|
107
|
+
Style/BisectedAttrAccessor:
|
|
148
108
|
Enabled: true
|
|
149
|
-
|
|
109
|
+
Style/CaseLikeIf:
|
|
150
110
|
Enabled: true
|
|
151
|
-
|
|
111
|
+
Style/ClassEqualityComparison: # (new in 0.93)
|
|
152
112
|
Enabled: true
|
|
153
|
-
|
|
113
|
+
Style/CombinableLoops: # (new in 0.90)
|
|
154
114
|
Enabled: true
|
|
155
|
-
|
|
115
|
+
Style/ExplicitBlockArgument:
|
|
156
116
|
Enabled: true
|
|
157
|
-
|
|
117
|
+
Style/ExponentialNotation:
|
|
158
118
|
Enabled: true
|
|
159
|
-
|
|
119
|
+
Style/GlobalStdStream:
|
|
160
120
|
Enabled: true
|
|
161
|
-
|
|
121
|
+
Style/HashAsLastArrayItem:
|
|
162
122
|
Enabled: true
|
|
163
|
-
|
|
123
|
+
Style/HashEachMethods:
|
|
164
124
|
Enabled: true
|
|
165
|
-
|
|
125
|
+
Style/HashLikeCase:
|
|
166
126
|
Enabled: true
|
|
167
|
-
Style/
|
|
127
|
+
Style/HashTransformKeys:
|
|
168
128
|
Enabled: true
|
|
169
|
-
Style/
|
|
129
|
+
Style/HashTransformValues:
|
|
170
130
|
Enabled: true
|
|
171
131
|
Style/KeywordParametersOrder: # (new in 0.90)
|
|
172
132
|
Enabled: true
|
|
133
|
+
Style/OptionalBooleanParameter:
|
|
134
|
+
Enabled: false
|
|
135
|
+
Style/RedundantAssignment:
|
|
136
|
+
Enabled: true
|
|
137
|
+
Style/RedundantFetchBlock:
|
|
138
|
+
Enabled: true
|
|
139
|
+
Style/RedundantFileExtensionInRequire:
|
|
140
|
+
Enabled: true
|
|
141
|
+
Style/RedundantRegexpCharacterClass:
|
|
142
|
+
Enabled: true
|
|
143
|
+
Style/RedundantRegexpEscape:
|
|
144
|
+
Enabled: true
|
|
173
145
|
Style/RedundantSelfAssignment: # (new in 0.90)
|
|
174
146
|
Enabled: true
|
|
147
|
+
Style/SingleArgumentDig:
|
|
148
|
+
Enabled: true
|
|
149
|
+
Style/SlicingWithRange:
|
|
150
|
+
Enabled: true
|
|
175
151
|
Style/SoleNestedConditional: # (new in 0.89)
|
|
176
152
|
Enabled: true
|
|
153
|
+
Style/StringConcatenation:
|
|
154
|
+
Enabled: true
|
data/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
[](https://codeclimate.com/github/sul-dlss/cocina-models/test_coverage)
|
|
3
3
|
[](https://codeclimate.com/github/sul-dlss/cocina-models/maintainability)
|
|
4
4
|
[](https://badge.fury.io/rb/cocina-models)
|
|
5
|
-
[](http://validator.swagger.io/validator/debug?url=https://raw.githubusercontent.com/sul-dlss/cocina-models/main/openapi.yml)
|
|
6
6
|
|
|
7
7
|
# Cocina::Models
|
|
8
8
|
|
|
@@ -42,6 +42,10 @@ which pushes the gem to rubygems.org. Next write up the release notes: https://
|
|
|
42
42
|
|
|
43
43
|
Finally, you must release versions of [sdr-client](https://github.com/sul-dlss/sdr-client) and [dor-services-client](https://github.com/sul-dlss/dor-services-client/) pinned to this version because [Argo](https://github.com/sul-dlss/argo) depends on both of those. When [dor-services-app](https://github.com/sul-dlss/dor-services-app) is updated to use the new models (via the auto-update script), the clients must be updated at the same time or there is risk of models produced by dor-services-app not being acceptable to the clients.
|
|
44
44
|
|
|
45
|
+
### Communicate
|
|
46
|
+
|
|
47
|
+
Send a note to `#dlss-infra-chg-mgmt` on Slack to let people know what is changing and when.
|
|
48
|
+
|
|
45
49
|
### Dependent Services
|
|
46
50
|
|
|
47
51
|
Once the above listed gems are updated all the following services that use cocina-models should be updated and released at the same time:
|
|
@@ -55,6 +59,7 @@ Once the above listed gems are updated all the following services that use cocin
|
|
|
55
59
|
* sul-dlss/hydrus
|
|
56
60
|
* sul-dlss/happy-heron
|
|
57
61
|
* sul-dlss/infrastructure-integration-test
|
|
62
|
+
* sul-dlss/dor_indexing_app
|
|
58
63
|
|
|
59
64
|
## Using this gem
|
|
60
65
|
|
data/cocina-models.gemspec
CHANGED
|
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
spec.bindir = 'exe'
|
|
23
23
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
24
24
|
spec.require_paths = ['lib']
|
|
25
|
-
spec.required_ruby_version = '
|
|
25
|
+
spec.required_ruby_version = '>= 2.5'
|
|
26
26
|
|
|
27
27
|
spec.add_dependency 'activesupport'
|
|
28
28
|
spec.add_dependency 'dry-struct', '~> 1.0'
|
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
|
|
|
36
36
|
spec.add_development_dependency 'committee'
|
|
37
37
|
spec.add_development_dependency 'rake', '~> 13.0'
|
|
38
38
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
39
|
-
spec.add_development_dependency 'rubocop', '~> 0.
|
|
40
|
-
spec.add_development_dependency 'rubocop-rspec'
|
|
39
|
+
spec.add_development_dependency 'rubocop', '~> 0.93'
|
|
40
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 1.44'
|
|
41
41
|
spec.add_development_dependency 'simplecov', '~> 0.17.0'
|
|
42
42
|
end
|
data/docs/index.html
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</style>
|
|
15
15
|
</head>
|
|
16
16
|
<body>
|
|
17
|
-
<redoc spec-url='https://raw.githubusercontent.com/sul-dlss/cocina-models/
|
|
17
|
+
<redoc spec-url='https://raw.githubusercontent.com/sul-dlss/cocina-models/main/openapi.yml'></redoc>
|
|
18
18
|
<script src="https://cdn.jsdelivr.net/npm/redoc@next/bundles/redoc.standalone.js"> </script>
|
|
19
19
|
</body>
|
|
20
20
|
</html>
|
|
@@ -11,6 +11,8 @@ module Cocina
|
|
|
11
11
|
attribute :role, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
12
12
|
attribute :identifier, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
13
13
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
14
|
+
# URL or other pointer to the location of the contributor information.
|
|
15
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
14
16
|
end
|
|
15
17
|
end
|
|
16
18
|
end
|
|
@@ -18,7 +18,8 @@ module Cocina
|
|
|
18
18
|
attribute :relatedResource, Types::Strict::Array.of(RelatedResource).meta(omittable: true)
|
|
19
19
|
attribute :marcEncodedData, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
20
20
|
attribute :adminMetadata, DescriptiveAdminMetadata.optional.meta(omittable: true)
|
|
21
|
-
|
|
21
|
+
# URL or other pointer to the location of the resource description.
|
|
22
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
22
23
|
|
|
23
24
|
def self.new(attributes = default_attributes, safe = false, validate = true, &block)
|
|
24
25
|
Validator.validate(self, attributes.with_indifferent_access) if validate && name
|
|
@@ -5,6 +5,7 @@ module Cocina
|
|
|
5
5
|
class DescriptiveAccessMetadata < Struct
|
|
6
6
|
attribute :url, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
7
7
|
attribute :physicalLocation, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
8
|
+
attribute :digitalLocation, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
8
9
|
attribute :accessContact, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
9
10
|
attribute :digitalRepository, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
10
11
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
@@ -7,7 +7,7 @@ module Cocina
|
|
|
7
7
|
attribute :event, Types::Strict::Array.of(Event).meta(omittable: true)
|
|
8
8
|
attribute :language, Types::Strict::Array.of(Language).meta(omittable: true)
|
|
9
9
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
10
|
-
attribute :
|
|
10
|
+
attribute :metadataStandard, Types::Strict::Array.of(Standard).meta(omittable: true)
|
|
11
11
|
attribute :identifier, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
12
12
|
end
|
|
13
13
|
end
|
|
@@ -25,6 +25,8 @@ module Cocina
|
|
|
25
25
|
attribute :qualifier, Types::Strict::String.meta(omittable: true)
|
|
26
26
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
27
27
|
attribute :valueLanguage, DescriptiveValueLanguage.optional.meta(omittable: true)
|
|
28
|
+
# URL or other pointer to the location of the value of the descriptive element.
|
|
29
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
28
30
|
end
|
|
29
31
|
end
|
|
30
32
|
end
|
|
@@ -25,6 +25,8 @@ module Cocina
|
|
|
25
25
|
attribute :qualifier, Types::Strict::String.meta(omittable: true)
|
|
26
26
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
27
27
|
attribute :valueLanguage, DescriptiveValueLanguage.optional.meta(omittable: true)
|
|
28
|
+
# URL or other pointer to the location of the value of the descriptive element.
|
|
29
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
28
30
|
attribute :appliesTo, Types::Strict::Array.of(DescriptiveBasicValue).meta(omittable: true)
|
|
29
31
|
end
|
|
30
32
|
end
|
|
@@ -15,7 +15,7 @@ module Cocina
|
|
|
15
15
|
attribute :qualifier, Types::Strict::String.meta(omittable: true)
|
|
16
16
|
attribute :script, DescriptiveValue.optional.meta(omittable: true)
|
|
17
17
|
attribute :source, Source.optional.meta(omittable: true)
|
|
18
|
-
# Status of the
|
|
18
|
+
# Status of the language relative to other parallel language elements (e.g. the primary language)
|
|
19
19
|
attribute :status, Types::Strict::String.enum('primary').meta(omittable: true)
|
|
20
20
|
attribute :standard, Standard.optional.meta(omittable: true)
|
|
21
21
|
attribute :structuredValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
@@ -23,6 +23,8 @@ module Cocina
|
|
|
23
23
|
attribute :uri, Types::Strict::String.meta(omittable: true)
|
|
24
24
|
# Value of the descriptive element.
|
|
25
25
|
attribute :value, Types::Strict::String.meta(omittable: true)
|
|
26
|
+
# URL or other pointer to the location of the language information.
|
|
27
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
26
28
|
attribute :valueLanguage, DescriptiveValueLanguage.optional.meta(omittable: true)
|
|
27
29
|
end
|
|
28
30
|
end
|
|
@@ -21,8 +21,12 @@ module Cocina
|
|
|
21
21
|
# Stanford persistent URL associated with the related resource.
|
|
22
22
|
attribute :purl, Types::Strict::String.meta(omittable: true)
|
|
23
23
|
attribute :access, DescriptiveAccessMetadata.optional.meta(omittable: true)
|
|
24
|
+
attribute :relatedResource, Types::Strict::Array.of(RelatedResource).meta(omittable: true)
|
|
25
|
+
attribute :adminMetadata, DescriptiveAdminMetadata.optional.meta(omittable: true)
|
|
24
26
|
# The version of the related resource.
|
|
25
27
|
attribute :version, Types::Strict::String.meta(omittable: true)
|
|
28
|
+
# URL or other pointer to the location of the related resource information.
|
|
29
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
26
30
|
end
|
|
27
31
|
end
|
|
28
32
|
end
|
data/lib/cocina/models/title.rb
CHANGED
|
@@ -25,6 +25,8 @@ module Cocina
|
|
|
25
25
|
attribute :qualifier, Types::Strict::String.meta(omittable: true)
|
|
26
26
|
attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
|
|
27
27
|
attribute :valueLanguage, DescriptiveValueLanguage.optional.meta(omittable: true)
|
|
28
|
+
# URL or other pointer to the location of the value of the descriptive element.
|
|
29
|
+
attribute :valueAt, Types::Strict::String.meta(omittable: true)
|
|
28
30
|
attribute :appliesTo, Types::Strict::Array.of(DescriptiveBasicValue).meta(omittable: true)
|
|
29
31
|
end
|
|
30
32
|
end
|
data/openapi.yml
CHANGED
|
@@ -198,16 +198,6 @@ components:
|
|
|
198
198
|
description: Record identifier that is unique within the context of the linked record's catalog.
|
|
199
199
|
type: string
|
|
200
200
|
example: 11403803
|
|
201
|
-
Classification:
|
|
202
|
-
type: object
|
|
203
|
-
additionalProperties: false
|
|
204
|
-
properties:
|
|
205
|
-
authority:
|
|
206
|
-
type: string
|
|
207
|
-
displayLabel:
|
|
208
|
-
type: string
|
|
209
|
-
edition:
|
|
210
|
-
type: string
|
|
211
201
|
Collection:
|
|
212
202
|
description: A group of Digital Repository Objects that indicate some type of conceptual grouping within the domain that is worth reusing across the system.
|
|
213
203
|
type: object
|
|
@@ -271,7 +261,6 @@ components:
|
|
|
271
261
|
description: Status of the contributor relative to other parallel contributors
|
|
272
262
|
(e.g. the primary author among a group of contributors).
|
|
273
263
|
type: string
|
|
274
|
-
# type: integer (uncomment when issue #154 resolved)
|
|
275
264
|
role:
|
|
276
265
|
description: Relationships of the contributor to the resource or to an event
|
|
277
266
|
in its history.
|
|
@@ -288,6 +277,9 @@ components:
|
|
|
288
277
|
type: array
|
|
289
278
|
items:
|
|
290
279
|
$ref: "#/components/schemas/DescriptiveValue"
|
|
280
|
+
valueAt:
|
|
281
|
+
description: URL or other pointer to the location of the contributor information.
|
|
282
|
+
type: string
|
|
291
283
|
Description:
|
|
292
284
|
type: object
|
|
293
285
|
additionalProperties: false
|
|
@@ -298,10 +290,6 @@ components:
|
|
|
298
290
|
minItems: 1
|
|
299
291
|
items:
|
|
300
292
|
$ref: "#/components/schemas/Title"
|
|
301
|
-
classification:
|
|
302
|
-
type: array
|
|
303
|
-
items:
|
|
304
|
-
$ref: "#/components/schemas/Classification"
|
|
305
293
|
contributor:
|
|
306
294
|
description: Agents contributing in some way to the creation and history of the
|
|
307
295
|
resource.
|
|
@@ -363,6 +351,9 @@ components:
|
|
|
363
351
|
$ref: "#/components/schemas/DescriptiveValue"
|
|
364
352
|
adminMetadata:
|
|
365
353
|
$ref: "#/components/schemas/DescriptiveAdminMetadata"
|
|
354
|
+
valueAt:
|
|
355
|
+
description: URL or other pointer to the location of the resource description.
|
|
356
|
+
type: string
|
|
366
357
|
required:
|
|
367
358
|
- title
|
|
368
359
|
DescriptiveAccessMetadata:
|
|
@@ -380,6 +371,11 @@ components:
|
|
|
380
371
|
type: array
|
|
381
372
|
items:
|
|
382
373
|
$ref: "#/components/schemas/DescriptiveValue"
|
|
374
|
+
digitalLocation:
|
|
375
|
+
description: Location of a digital version of the resource, such as a file path for a born digital resource.
|
|
376
|
+
type: array
|
|
377
|
+
items:
|
|
378
|
+
$ref: "#/components/schemas/DescriptiveValue"
|
|
383
379
|
accessContact:
|
|
384
380
|
description: The library, organization, or person responsible for access to the resource.
|
|
385
381
|
type: array
|
|
@@ -421,9 +417,11 @@ components:
|
|
|
421
417
|
type: array
|
|
422
418
|
items:
|
|
423
419
|
$ref: "#/components/schemas/DescriptiveValue"
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
420
|
+
metadataStandard:
|
|
421
|
+
description: Descriptive or content standard(s) to which this resource description conforms.
|
|
422
|
+
type: array
|
|
423
|
+
items:
|
|
424
|
+
$ref: "#/components/schemas/Standard"
|
|
427
425
|
identifier:
|
|
428
426
|
description: Identifiers associated with this resource description.
|
|
429
427
|
type: array
|
|
@@ -455,7 +453,6 @@ components:
|
|
|
455
453
|
description: Status of the descriptive element value relative to other instances
|
|
456
454
|
of the element.
|
|
457
455
|
type: string
|
|
458
|
-
# type: integer (uncomment when issue #154 is resolved)
|
|
459
456
|
code:
|
|
460
457
|
description: Code value of the descriptive element.
|
|
461
458
|
type: string
|
|
@@ -489,6 +486,9 @@ components:
|
|
|
489
486
|
$ref: "#/components/schemas/DescriptiveValue"
|
|
490
487
|
valueLanguage:
|
|
491
488
|
$ref: "#/components/schemas/DescriptiveValueLanguage"
|
|
489
|
+
valueAt:
|
|
490
|
+
description: URL or other pointer to the location of the value of the descriptive element.
|
|
491
|
+
type: string
|
|
492
492
|
DescriptiveGeographicMetadata:
|
|
493
493
|
description: Value model for mods geographic extension metadata
|
|
494
494
|
type: object
|
|
@@ -502,7 +502,7 @@ components:
|
|
|
502
502
|
description: Terms associated with the intellectual content of the related resource.
|
|
503
503
|
type: array
|
|
504
504
|
items:
|
|
505
|
-
$ref: "#/components/schemas/DescriptiveValue"
|
|
505
|
+
$ref: "#/components/schemas/DescriptiveValue"
|
|
506
506
|
DescriptiveParallelValue:
|
|
507
507
|
description: Value model for multiple representations of the same information (e.g. in different languages).
|
|
508
508
|
type: object
|
|
@@ -947,8 +947,7 @@ components:
|
|
|
947
947
|
source:
|
|
948
948
|
$ref: "#/components/schemas/Source"
|
|
949
949
|
status:
|
|
950
|
-
description: Status of the
|
|
951
|
-
(e.g. the primary author among a group of contributors).
|
|
950
|
+
description: Status of the language relative to other parallel language elements (e.g. the primary language)
|
|
952
951
|
type: string
|
|
953
952
|
enum:
|
|
954
953
|
- primary
|
|
@@ -967,6 +966,9 @@ components:
|
|
|
967
966
|
value:
|
|
968
967
|
description: Value of the descriptive element.
|
|
969
968
|
type: string
|
|
969
|
+
valueAt:
|
|
970
|
+
description: URL or other pointer to the location of the language information.
|
|
971
|
+
type: string
|
|
970
972
|
valueLanguage:
|
|
971
973
|
# description: present for mapping to additional schemas in the future and for consistency but not otherwise used
|
|
972
974
|
$ref: "#/components/schemas/DescriptiveValueLanguage"
|
|
@@ -982,7 +984,7 @@ components:
|
|
|
982
984
|
- md5
|
|
983
985
|
- sha1
|
|
984
986
|
digest:
|
|
985
|
-
description: The digest value
|
|
987
|
+
description: The digest value hexidecimal encoded
|
|
986
988
|
type: string
|
|
987
989
|
required:
|
|
988
990
|
- type
|
|
@@ -1009,7 +1011,6 @@ components:
|
|
|
1009
1011
|
status:
|
|
1010
1012
|
description: Status of the related resource relative to other related resources.
|
|
1011
1013
|
type: string
|
|
1012
|
-
# type: integer (uncomment when issue #154 resolved)
|
|
1013
1014
|
displayLabel:
|
|
1014
1015
|
description: The preferred display label to use for the related resource in access systems.
|
|
1015
1016
|
type: string
|
|
@@ -1065,9 +1066,19 @@ components:
|
|
|
1065
1066
|
format: uri
|
|
1066
1067
|
access:
|
|
1067
1068
|
$ref: "#/components/schemas/DescriptiveAccessMetadata"
|
|
1069
|
+
relatedResource:
|
|
1070
|
+
description: Other resources associated with the related resource.
|
|
1071
|
+
type: array
|
|
1072
|
+
items:
|
|
1073
|
+
$ref: "#/components/schemas/RelatedResource"
|
|
1074
|
+
adminMetadata:
|
|
1075
|
+
$ref: "#/components/schemas/DescriptiveAdminMetadata"
|
|
1068
1076
|
version:
|
|
1069
1077
|
description: The version of the related resource.
|
|
1070
1078
|
type: string
|
|
1079
|
+
valueAt:
|
|
1080
|
+
description: URL or other pointer to the location of the related resource information.
|
|
1081
|
+
type: string
|
|
1071
1082
|
ReleaseTag:
|
|
1072
1083
|
description: A tag that indicates the item or collection should be released.
|
|
1073
1084
|
type: object
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cocina-models
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.46.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Justin Coyne
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-02-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -170,28 +170,28 @@ dependencies:
|
|
|
170
170
|
requirements:
|
|
171
171
|
- - "~>"
|
|
172
172
|
- !ruby/object:Gem::Version
|
|
173
|
-
version: '0.
|
|
173
|
+
version: '0.93'
|
|
174
174
|
type: :development
|
|
175
175
|
prerelease: false
|
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
|
177
177
|
requirements:
|
|
178
178
|
- - "~>"
|
|
179
179
|
- !ruby/object:Gem::Version
|
|
180
|
-
version: '0.
|
|
180
|
+
version: '0.93'
|
|
181
181
|
- !ruby/object:Gem::Dependency
|
|
182
182
|
name: rubocop-rspec
|
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
|
184
184
|
requirements:
|
|
185
|
-
- - "
|
|
185
|
+
- - "~>"
|
|
186
186
|
- !ruby/object:Gem::Version
|
|
187
|
-
version: '
|
|
187
|
+
version: '1.44'
|
|
188
188
|
type: :development
|
|
189
189
|
prerelease: false
|
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
|
191
191
|
requirements:
|
|
192
|
-
- - "
|
|
192
|
+
- - "~>"
|
|
193
193
|
- !ruby/object:Gem::Version
|
|
194
|
-
version: '
|
|
194
|
+
version: '1.44'
|
|
195
195
|
- !ruby/object:Gem::Dependency
|
|
196
196
|
name: simplecov
|
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -260,7 +260,6 @@ files:
|
|
|
260
260
|
- lib/cocina/models/applies_to.rb
|
|
261
261
|
- lib/cocina/models/catalog_link.rb
|
|
262
262
|
- lib/cocina/models/checkable.rb
|
|
263
|
-
- lib/cocina/models/classification.rb
|
|
264
263
|
- lib/cocina/models/collection.rb
|
|
265
264
|
- lib/cocina/models/collection_identification.rb
|
|
266
265
|
- lib/cocina/models/contributor.rb
|
|
@@ -311,13 +310,13 @@ files:
|
|
|
311
310
|
homepage: https://github.com/sul-dlss/cocina-models
|
|
312
311
|
licenses: []
|
|
313
312
|
metadata: {}
|
|
314
|
-
post_install_message:
|
|
313
|
+
post_install_message:
|
|
315
314
|
rdoc_options: []
|
|
316
315
|
require_paths:
|
|
317
316
|
- lib
|
|
318
317
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
319
318
|
requirements:
|
|
320
|
-
- - "
|
|
319
|
+
- - ">="
|
|
321
320
|
- !ruby/object:Gem::Version
|
|
322
321
|
version: '2.5'
|
|
323
322
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
@@ -326,8 +325,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
326
325
|
- !ruby/object:Gem::Version
|
|
327
326
|
version: '0'
|
|
328
327
|
requirements: []
|
|
329
|
-
rubygems_version: 3.
|
|
330
|
-
signing_key:
|
|
328
|
+
rubygems_version: 3.0.3
|
|
329
|
+
signing_key:
|
|
331
330
|
specification_version: 4
|
|
332
331
|
summary: Data models for the SDR
|
|
333
332
|
test_files: []
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Cocina
|
|
4
|
-
module Models
|
|
5
|
-
class Classification < Struct
|
|
6
|
-
attribute :authority, Types::Strict::String.meta(omittable: true)
|
|
7
|
-
attribute :displayLabel, Types::Strict::String.meta(omittable: true)
|
|
8
|
-
attribute :edition, Types::Strict::String.meta(omittable: true)
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|