cocina-models 0.46.0 → 0.49.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: 8389369c0fe410193de14e970c41f8caf0897529d9f137f12b402c69ae0dfe73
4
- data.tar.gz: e1f670a2f769c2220d7c6e40afe5757fd269649594ed9e1743c715ccb501b24e
3
+ metadata.gz: 422ee3a70d8d672a70b4a2125ada5a107941a963c6023e2905dd3f8c893b6ec4
4
+ data.tar.gz: d1dbe1479ea5ee1366e621eb8fb44663d4540cfbd84cf02e97ced3017c36bb93
5
5
  SHA512:
6
- metadata.gz: a5e3eb27b903fd4050db36645f74427087a58dbfdaca9827400872977025fecb80797144a430b2b05ec06d426614fa7c81f9cc9bd4b17709bfb941f71b9ca403
7
- data.tar.gz: a1b4edb10305328ee9dd232fd76ce2276f3a265b483be5e754f99f8723a15118c5da56ae25b10b5afa6672875ec25aaf2e54e078b037db8f1509c68006f162d2
6
+ metadata.gz: ce12a8eebecba8a9b4fbfb8275feced7bffd9439c28c171769995495afb4ecfbcdc5aded9ec86a188825684151dc248958c04c5116df3923a015ad4f29e1e283
7
+ data.tar.gz: b2cc97124a3c86da0134bcac5987664411cd62473886d8fcc8d1aa6ae11d91b0e6e0ea4f153e15ceb8ad2b4068c29403f45c86df97ed433cbce6e05a8eb0aeeb
@@ -5,6 +5,7 @@ module Cocina
5
5
  class AdminPolicyAdministrative < Struct
6
6
  attribute :defaultObjectRights, Types::Strict::String.default('<?xml version="1.0" encoding="UTF-8"?><rightsMetadata><access type="discover"><machine><world/></machine></access><access type="read"><machine><world/></machine></access><use><human type="useAndReproduction"/><human type="creativeCommons"/><machine type="creativeCommons" uri=""/><human type="openDataCommons"/><machine type="openDataCommons" uri=""/></use><copyright><human/></copyright></rightsMetadata>').meta(omittable: true)
7
7
  attribute :registrationWorkflow, Types::Strict::String.meta(omittable: true)
8
+ attribute :collectionsForRegistration, Types::Strict::Array.of(Types::Strict::String).meta(omittable: true)
8
9
  attribute :hasAdminPolicy, Types::Strict::String
9
10
  end
10
11
  end
@@ -3,6 +3,10 @@
3
3
  module Cocina
4
4
  module Models
5
5
  class CollectionIdentification < Struct
6
+ # Unique identifier in some other system. This is because a large proportion of what is deposited in SDR, historically and currently, are representations of objects that are also represented in other systems. For example, digitized paper and A/V collections have physical manifestations, and those physical objects are managed in systems that have their own identifiers. Similarly, books have barcodes, archival materials have collection numbers and physical locations, etc. The sourceId allows determining if an item has been deposited before and where to look for the original item if you're looking at its SDR representation. The format is: "namespace:identifier"
7
+
8
+ # example: sul:PC0170_s3_Fiesta_Bowl_2012-01-02_210609_2026
9
+ attribute :sourceId, Types::Strict::String.meta(omittable: true)
6
10
  attribute :catalogLinks, Types::Strict::Array.of(CatalogLink).meta(omittable: true)
7
11
  end
8
12
  end
@@ -5,6 +5,7 @@ module Cocina
5
5
  class DescriptiveBasicValue < Struct
6
6
  attribute :structuredValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
7
  attribute :parallelValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
+ attribute :groupedValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
9
  # String or integer value of the descriptive element.
9
10
  attribute :value, Types::Nominal::Any.meta(omittable: true)
10
11
  # Type of value provided by the descriptive element.
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Cocina
4
+ module Models
5
+ class DescriptiveGroupedValue < Struct
6
+ attribute :groupedValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
+ end
8
+ end
9
+ end
@@ -5,6 +5,7 @@ module Cocina
5
5
  class DescriptiveValue < Struct
6
6
  attribute :structuredValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
7
  attribute :parallelValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
+ attribute :groupedValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
9
  # String or integer value of the descriptive element.
9
10
  attribute :value, Types::Nominal::Any.meta(omittable: true)
10
11
  # Type of value provided by the descriptive element.
@@ -4,6 +4,7 @@ module Cocina
4
4
  module Models
5
5
  class Event < Struct
6
6
  attribute :structuredValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
+ attribute :parallelValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
8
  # Description of the event (creation, publication, etc.).
8
9
  attribute :type, Types::Strict::String.meta(omittable: true)
9
10
  # The preferred display label to use for the event in access systems.
@@ -9,6 +9,7 @@ module Cocina
9
9
  # The preferred display label to use for the descriptive element in access systems.
10
10
  attribute :displayLabel, Types::Strict::String.meta(omittable: true)
11
11
  attribute :encoding, Standard.optional.meta(omittable: true)
12
+ attribute :groupedValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
12
13
  attribute :note, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
13
14
  attribute :parallelValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
14
15
  # present for mapping to additional schemas in the future and for consistency but not otherwise used
@@ -5,6 +5,7 @@ module Cocina
5
5
  class Title < Struct
6
6
  attribute :structuredValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
7
7
  attribute :parallelValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
+ attribute :groupedValue, Types::Strict::Array.of(DescriptiveValue).meta(omittable: true)
8
9
  # String or integer value of the descriptive element.
9
10
  attribute :value, Types::Nominal::Any.meta(omittable: true)
10
11
  # Type of value provided by the descriptive element.
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Cocina
4
4
  module Models
5
- VERSION = '0.46.0'
5
+ VERSION = '0.49.0'
6
6
  end
7
7
  end
data/openapi.yml CHANGED
@@ -169,6 +169,11 @@ components:
169
169
  default: <?xml version="1.0" encoding="UTF-8"?><rightsMetadata><access type="discover"><machine><world/></machine></access><access type="read"><machine><world/></machine></access><use><human type="useAndReproduction"/><human type="creativeCommons"/><machine type="creativeCommons" uri=""/><human type="openDataCommons"/><machine type="openDataCommons" uri=""/></use><copyright><human/></copyright></rightsMetadata>
170
170
  registrationWorkflow:
171
171
  type: string
172
+ collectionsForRegistration:
173
+ description: When you register an item with this admin policy, these are the collections that are available.
174
+ type: array
175
+ items:
176
+ type: string
172
177
  hasAdminPolicy:
173
178
  type: string
174
179
  required:
@@ -239,6 +244,8 @@ components:
239
244
  type: object
240
245
  additionalProperties: false
241
246
  properties:
247
+ sourceId:
248
+ $ref: '#/components/schemas/SourceId'
242
249
  catalogLinks:
243
250
  type: array
244
251
  items:
@@ -430,13 +437,15 @@ components:
430
437
  DescriptiveBasicValue:
431
438
  description: Basic value model for descriptive elements.
432
439
  type: object
433
- # additionalProperties breaks the validator, unclear as to why.
440
+ # additionalProperties breaks the validator for allOf, unclear as to why.
434
441
  # additionalProperties: false
435
442
  allOf:
436
443
  - $ref: "#/components/schemas/DescriptiveStructuredValue"
437
444
  - $ref: "#/components/schemas/DescriptiveParallelValue"
445
+ - $ref: "#/components/schemas/DescriptiveGroupedValue"
438
446
  - type: object
439
- additionalProperties: false
447
+ # additionalProperties breaks the validator for DescriptiveValue, unclear as to why.
448
+ # additionalProperties: false
440
449
  properties:
441
450
  value:
442
451
  description: String or integer value of the descriptive element.
@@ -503,6 +512,15 @@ components:
503
512
  type: array
504
513
  items:
505
514
  $ref: "#/components/schemas/DescriptiveValue"
515
+ DescriptiveGroupedValue:
516
+ description: Value model for a set of descriptive elements grouped together in an unstructured way.
517
+ type: object
518
+ additionalProperties: false
519
+ properties:
520
+ groupedValue:
521
+ type: array
522
+ items:
523
+ $ref: "#/components/schemas/DescriptiveValue"
506
524
  DescriptiveParallelValue:
507
525
  description: Value model for multiple representations of the same information (e.g. in different languages).
508
526
  type: object
@@ -555,6 +573,12 @@ components:
555
573
  - type: object
556
574
  required:
557
575
  - parallelValue
576
+ - type: object
577
+ required:
578
+ - groupedValue
579
+ - type: object
580
+ required:
581
+ - valueAt
558
582
  DRO:
559
583
  description: Domain-defined abstraction of a 'work'. Digital Repository Objects' abstraction is describable for our domain’s purposes, i.e. for management needs within our system.
560
584
  type: object
@@ -719,6 +743,7 @@ components:
719
743
  additionalProperties: false
720
744
  allOf:
721
745
  - $ref: "#/components/schemas/DescriptiveStructuredValue"
746
+ - $ref: "#/components/schemas/DescriptiveParallelValue"
722
747
  - type: object
723
748
  additionalProperties: false
724
749
  properties:
@@ -927,6 +952,11 @@ components:
927
952
  encoding:
928
953
  # description: present for mapping to additional schemas in the future and for consistency but not otherwise used
929
954
  $ref: "#/components/schemas/Standard"
955
+ groupedValue:
956
+ description: present for mapping to additional schemas in the future and for consistency but not otherwise used
957
+ type: array
958
+ items:
959
+ $ref: "#/components/schemas/DescriptiveValue"
930
960
  note:
931
961
  description: present for mapping to additional schemas in the future and for consistency but not otherwise used
932
962
  type: array
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.46.0
4
+ version: 0.49.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-01 00:00:00.000000000 Z
11
+ date: 2021-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -268,6 +268,7 @@ files:
268
268
  - lib/cocina/models/descriptive_admin_metadata.rb
269
269
  - lib/cocina/models/descriptive_basic_value.rb
270
270
  - lib/cocina/models/descriptive_geographic_metadata.rb
271
+ - lib/cocina/models/descriptive_grouped_value.rb
271
272
  - lib/cocina/models/descriptive_parallel_value.rb
272
273
  - lib/cocina/models/descriptive_structured_value.rb
273
274
  - lib/cocina/models/descriptive_value.rb